package k1_exercise;

public class Loop_allNumberByHundred {

    /**
     * 输出1-100之间的所有的完数
     * （完数指的是一个数的所有因子数的和等于这个数本身，例如 6=1+2+3,即6就是完全数）
     */
    public static void main(String[] args) {

        int numberCount = 100;

        //判断1-100之间的每一个数是否为完数
        for (int number = 1; number <=100 ; number++) {
            //初始化所有因数的和
            int sum = 0;
            //从1开始到数字的一半，一次判断是否为因数
            for (int j = 1; j <= number/2; j++) {
                //如果能被数字整除的就是因数，做求和
                if(number%j==0){
                    sum+=j;
                }
            }

            //所有因数之和与原数字一致就是完数，否则不是完数
            if(sum==number){
                System.out.print(number+"是完数\t");
            }
        }
    }
}
